メロディデータ

1.   楽譜
 
2.  音階
    ドレミファソラシドの周波数
   
3.  音符(オタマジャクシ)
 → 要素数が3個の2次元配列としてデータ化
 
//app.h

#define T4 750  //四分音符の時間(長さ)  T4 = 750 [msec]  
                //T4 = 60 * 1000 / 80;  //80:テンポ、泊数(四分音符の数/毎分)
                //80
#define Do_C4 261  //第四オクターブ ド 261.63Hz
#define Re_D4 293  //第四オクターブ レ  293.67Hz
#define Mi_E4 329  //第四オクターブ ミ  329.63Hz 
#define Fa_F4 349  //第四オクターブ ファ 349.23Hz
#define So_G4 392  //第四オクターブ ソ   392.00Hz
#define La_A4 440  //第四オクターブ ラ   440.00Hz
#define La_sharpA4 466  //第四オクターブ #ラ(嬰イ)466.16Hz  //#:半音上げる
#define Si_B4 493  //第四オクターブ シ  493.88Hz 
#define Do_C5 523  //第五オクターブ ド  523.23Hz
#define Re_D5 587  //第五オクターブ レ  587.34Hz

int Furusato[][3] {       //2次元配列 : {音階(音の周波数),音価(音が発生している時間),無音の時間)} X N個                              
  //音符第1行: うさぎ追いし かの山  -----------------------------------------------------------
  //-----第一小節
    {Fa_F4, T4, 0}, //ファ  //四分音符長さ
    {Fa_F4, T4, 0}, //ファ  //四分音符長さ
    {Fa_F4, T4, 0}, //ファ  //四分音符長さ
  //------第二小節
    {So_G4, T4 + T4/2, 0}, //ソ  //付点付四分音符長さ
    {La_A4, T4 /2, 0}, //ラ   //八分音符長さ
    {So_G4, T4 , 0}, //ソ  //四分音符長さ
  //-------第三小節
{La_A4, T4 , 0}, //ラ //四分音符長さ {La_A4, T4 , 0}, //ラ //四分音符長さ {La_sharpA4, T4, 0}, //#ラ //四分音符長さ